import { message } from "antd";
import axios from "axios";

//newAxios就是加入了我们自己配置的axios
const newAxios = axios.create({
    baseURL:"http://nocat.life:8002",
    timeout:5000
})

//请求拦截器
newAxios.interceptors.request.use((request)=>{
    //只要newAxios发送axios的请求
    const token = localStorage.token
    if(token){
        //headers中请求头的名字，必须接口文档为准
        request.headers.token = token
    }
    return request
})

//响应拦截器
//如果响应成功200，进入第一个回调函数。请求失败 404 401 500进入第二个回调函数
newAxios.interceptors.response.use((resp)=>{
    //resp响应回来数据，你们可以进行处理。
    return resp;
},(error)=>{
    const response = error.response
    switch(response.status){
        case 500:
            message.error("服务器开小差了")
            break;
        case 404:
            message.error("请求路径不对")
            break;
        case 401:
            message.error("身份过期")
            localStorage.removeItem("token")
            localStorage.removeItem("userInfo")
            window.location.href="/"
            break;
        default:
            message.error("未知错误")
    }
})


export default newAxios